package com.blaze.framework.core.util.domain.orm;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 审计表
 *
 * @author created by Zhou Zongbo on 2025/5/30.
 */
public interface Auditable<ID extends Serializable> extends Persistence<ID> {

    /**
     * 创建人id
     *
     * @return 创建人id
     */
    Long getCreatedUserId();

    /**
     * 创建人名称
     * @return 创建人名称
     */
    String getCreatedUserName();

    /**
     * 修改人id
     *
     * @return 修改人id
     */
    Long getLastModifiedUserId();

    /**
     * 修改人
     *
     * @return 修改人
     */
    String getLastModifiedUserName();

    /**
     * 创建时间
     *
     * @return 创建时间
     */
    LocalDateTime getCreatedDate();

    /**
     * 修改时间
     *
     * @return 修改时间
     */
    LocalDateTime getLastModifiedDate();
}
